// angular
import {BrowserModule} from '@angular/platform-browser';
import {NgModule} from '@angular/core';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
import {HTTP_INTERCEPTORS, HttpClientModule} from '@angular/common/http';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {CommonModule, registerLocaleData} from '@angular/common';
import en from '@angular/common/locales/en';
// 阿里
import {NzSpinModule} from 'ng-zorro-antd/spin';
import { NzAlertModule } from 'ng-zorro-antd/alert';
// 自己
import {AppRoutingModule} from './app-routing.module';
import {AppComponent} from './app.component';
import {BaseModule} from './base/base.module';
import {LoginComponent} from './base/login/login.component';
import {ListFindModule} from './common/list-find/list-find.module';
import {HomeComponent} from './home/home.component';
import {BaseRouteFilter} from './base/base-route.filter';
import {DefaultPageComponent} from './home/home-page/default-page.component';
import {BaseHttpInterceptor} from './base/base-http.Interceptor';
import {ShareFileComponent} from './base/share-file/share-file.component';
import {PipeModule} from './common/pipe/pipe.module';
import {TableFindModule} from './common/table-find/table-find.module';
import {MusicPlayerModule} from './common/music-player/music-player.module';
import {HomeModule} from './home/home.module';

registerLocaleData(en);

@NgModule({
  declarations: [AppComponent],
  imports: [
    BaseModule,
    HomeModule,
    BrowserModule,
    AppRoutingModule,
    HttpClientModule,
    BrowserAnimationsModule,
    ReactiveFormsModule,
    PipeModule,
    NzSpinModule,
    NzAlertModule
  ],
  providers: [
    {provide: HTTP_INTERCEPTORS, useClass: BaseHttpInterceptor, multi: true}, BaseRouteFilter
  ],
  bootstrap: [AppComponent]
})
export class AppModule {
}
